package com.hsnn.medstgmini.settlement.service.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.hsnn.medstgmini.settlement.dao.PostOrderDao;
import com.hsnn.medstgmini.settlement.model.SetAcctInfo;
import com.hsnn.medstgmini.settlement.model.SetAcctTransInfo;
import com.hsnn.medstgmini.settlement.model.SetBankAcctInfo;
import com.hsnn.medstgmini.settlement.model.SetPostOrder;
import com.hsnn.medstgmini.settlement.model.SetRelationship;
import com.hsnn.medstgmini.settlement.service.PostOrderManager;
import com.hsnn.medstgmini.util.Pagination;

@Service
public class PostOrderManagerImpl implements PostOrderManager {
@Autowired
private PostOrderDao postOrderDao;
	/**
	 *@category 获取缴款单列表数据[中心端]
	 *@author 应晓川
	 *@date 2015年7月21日08:56:54
	 *@param page
	 */
	@Override
	public Pagination getPostOrderList(Pagination page) {
		return postOrderDao.getPostOrderList(page);
	}
	
	/**
	 *@category 获取缴款单列表数据[医疗机构端]
	 *@author 应晓川
	 *@date 2015年7月21日13:30:33
	 *@param page
	 */
	@Override
	public Pagination getPostOrderListByHosp(Pagination page) {
		return postOrderDao.getPostOrderListByHosp(page);
	}
	/**
	 *@category 添加缴款单数据[医疗机构端]
	 *@author 应晓川
	 *@date 2015年7月21日13:28:21
	 *@param page
	 */
	@Override
	public void saveSetPostOrder(Pagination page) {
		postOrderDao.saveSetPostOrder(page);
	}

	/**
	 *@category 根据医疗机构获取账户信息[医疗机构端]
	 *@author 应晓川
	 *@date 2015年7月21日16:53:59
	 *@param page
	 */
	@Override
	public List<SetBankAcctInfo> getSetBankAcctinfoById(String hospId) {
		return postOrderDao.getSetBankAcctinfoById(hospId);
	}

	/**
	 *@category 更新医疗机构账户金额[医疗机构端]
	 *@author 应晓川
	 *@date 2015年7月21日18:22:42
	 *@param page
	 */
	@Override
	public void updateSetAcctinfoBySetCenter(Pagination page) {
		 postOrderDao.updateSetAcctinfoBySetCenter(page);
		
	}

	/**
	 *@category 更新缴款单状态[医疗机构端]
	 *@author 应晓川
	 *@date 2015年7月21日18:24:07
	 *@param page
	 */
	@Override
	public void updateSetPostOrderByHosp(Pagination page) {
		 postOrderDao.updateSetPostOrderByHosp(page);		
	}

	/**
	 *@category 根据Id获取父级id
	 *@author 应晓川
	 *@date 2015年7月22日15:02:23
	 *@param hospId
	 */
	@Override
	public SetRelationship getFatherOrgId(String id) {
		return postOrderDao.getFatherOrgId(id);
	}
	
	/**
	 *@category 根据缴款单名称获取缴款单
	 *@author 周奇
	 *@date 2015年8月13日11:25:09
	 *@param name
	 */
	@Override
	public SetPostOrder getPostOrderByName(String postOrderName) {
		return postOrderDao.getPostOrderByName(postOrderName);
	}


	@Override
	public Pagination getPostOrderListBySetCenter(Pagination page) {
		return postOrderDao.getPostOrderListBySetCenter(page);
	}

	@Override
	public Pagination getAuditPostOrderListByCenter(Pagination page) {
		return postOrderDao.getAuditPostOrderListByCenter(page);
	}
	
	@Override
	public Pagination getAuditPostOrderListBySetCenter(Pagination page) {
		return postOrderDao.getAuditPostOrderListBySetCenter(page);
	}

	
	@Override
	public SetPostOrder getSetPostOrderById(String id) {
		return postOrderDao.getSetPostOrderById(id);
	}

	
	@Override
	public void updateSetPostOrder(SetPostOrder setPostOrder) {
		postOrderDao.updateSetPostOrder(setPostOrder);
	}

	@Override
	public Pagination getSetPostOrderByPage(Pagination page) {
		return postOrderDao.getSetPostOrderByPage( page) ;
	}

	/**
	 *@category 根据id获取账户信息
	 *@author 应晓川
	 *@date 2015年7月23日18:16:33
	 *@param id
	 */
	@Override
	public SetAcctInfo getSetAcctInfoById(String id) {
		return postOrderDao.getSetAcctInfoById(id);
	}

	
	@Override
	public void updateSetAcctInfo(SetAcctInfo setAcctInfo) {
		
		postOrderDao.updateSetAcctInfo(setAcctInfo);
	}
	@Override
	public void saveSetAcctTransInfo(SetAcctTransInfo setAcctTransInfo) {
		postOrderDao.saveSetAcctTransInfo(setAcctTransInfo);
		
	}
	
	@Override
	public SetPostOrder getPostOrderById(String id) {
		return postOrderDao.getPostOrderById(id);
	}

	/**
	 *@category 根据银行账户获取账户人和银行名
	 *@author 应晓川
	 *@date 2015年7月31日18:04:09
	 *@param getBankAcct
	 */
	@Override
	public SetBankAcctInfo getBankAcct(String bankAcctNo) {
		return postOrderDao.getBankAcct(bankAcctNo);
	}
}